Deep learning is a technology used to cluster or classify objects or data. For example, computers cannot distinguish dogs and cats from photographs alone. But a human can easily distinguish those two. To this end, a method called “machine learning” was devised. It is a technique to allow a computer to classify similar things among lots of data inputted into the computer. When a photo of an animal similar to a dog is inputted, the computer will classify it as a dog photo.
There have already been many machine learning algorithms to classify data. For example, a decision tree, a Bayesian network, a support vector machine (SVM), an artificial neural network, etc. have been developed. The deep learning is a descendant of the artificial neural network.
Deep Convolution Neural Networks (Deep CNNs) are the heart of the remarkable development in deep learning. CNNs have already been used in the 90's to solve the problem of character recognition, but their use has become as widespread as it is now thanks to recent research. These deep CNNs won the 2012 ImageNet image classification tournament, crushing other competitors. Then, the convolution neural network became a very useful tool in the field of the machine learning.
FIG. 1 is a drawing schematically illustrating a conventional process of a general feeding of an input image by using a CNN.
By referring to FIG. 1, the input image 101 is fed once to a CNN in a conventional CNN operation. For example, the CNN receives the input image and instructs multiple convolutional layers to apply multiple convolution operations and non-linear operations such as ReLU, to thereby generate feature maps 102, 103, and 104 sequentially. Next, the final feature map 104 or at least some of the feature maps may be used to detect an object or to get a result of a segmentation.
Such conventional CNN operation has a problem of, once the input image is fed, losing detailed information of the input image while the feature maps are generated through the multiple convolutional layers.